|
In computer programming, a sentinel value (also referred to as a flag value, trip value, rogue value, signal value, or dummy data)〔 〕 is a special value in the context of an algorithm which uses its presence as a condition of termination, typically in a loop or recursive algorithm. The sentinel value is a form of in-band data that makes it possible to detect the end of the data when no out-of-band data (such as an explicit size indication) is provided. The value should be selected in such a way that it is guaranteed to be distinct from all legal data values, since otherwise the presence of such values would prematurely signal the end of the data (the semipredicate problem). A sentinel value is sometimes known as an "Elephant in Cairo", due to a joke where this is used as a physical sentinel. In safe languages, most uses of sentinel values could be replaced with option types, which enforce explicit handling of the exceptional case. ==Examples== Some examples of common sentinel values and their uses: * Null character for indicating the end of a null-terminated string * Null pointer for indicating the end of a linked list or a tree. * A negative integer for indicating the end of a sequence of non-negative integers * End-of-file, a non-character value returned by certain input routines to signal that no further characters are available from a file * High Values, a key value of hexadecimal 0xFF used in business programming 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「sentinel value」の詳細全文を読む スポンサード リンク
|